package io.renren.modules.bonus.service;

import io.renren.common.page.PageData;
import io.renren.common.service.CrudService;
import io.renren.modules.bonus.excel.BonusProcessExcel;
import io.renren.modules.bonus.vo.BonusProcessVO;
import io.renren.modules.bonus.dto.BonusProcessDTO;
import io.renren.modules.bonus.entity.BonusProcessEntity;

import java.util.List;
import java.util.Map;

/**
 * 奖金申请审核管理
 *
 * @author test test
 * @since 1.0.0 2024-09-11
 */
public interface BonusProcessService extends CrudService<BonusProcessEntity, BonusProcessVO> {
    
    /**
     * 保存
     * @param bonusProcessDTO
     */
    void save(BonusProcessDTO bonusProcessDTO);
    
    /**
     * 修改
     * @param bonusProcessDTO
     */
    void update(BonusProcessDTO bonusProcessDTO);

    /**
     * 分页
     * @param params
     * @return
     */
    PageData<BonusProcessVO> bonusprocessPage(Map<String, Object> params);

    /**
     * 学院审核
     * @param dto
     */
    void collegeApproved(BonusProcessDTO dto);

    /**
     * 部门审核
     * @param dto
     */
    void departmentApproved(BonusProcessDTO dto);

    /**
     * 奖金申请
     * @param dto
     */
    void bonusApplication(BonusProcessDTO dto);

    /**
     * 奖金申请审核导出
     * @param params
     * @return
     */
    List<BonusProcessExcel> exportList(Map<String, Object> params);

}
